home *** CD-ROM | disk | FTP | other *** search
/ Technotools / Technotools (Chestnut CD-ROM)(1993).ISO / lang_c / mikecom / carrier.asm < prev    next >
Assembly Source File  |  1987-05-17  |  1KB  |  31 lines

  1.  
  2. title GET CARRIER STATUS
  3. include subfx.h
  4.  
  5. ;  Mike Dumdei,  6 Holly Lane,  Texarkana TX 75503
  6.  
  7. ;******************************************************************************
  8. ; ASYNC_CARRIER  --  Returns TRUE (1) if carrier is present else returns
  9. ;       FALSE (0).  Returns R_NOPORT (-1) if invalid port.
  10. ;******************************************************************************
  11.  
  12. begseg          COMM_TEXT
  13. publicproc      _async_carrier
  14.         push    bp
  15.         mov     bp,sp
  16.         push    si              ;stack frame setup
  17.         call    __ck_port_arg   ;ck if valid, load pointers
  18.         jz      carr_exit       ;bad arg if ZR flag set
  19.         xor     ax,ax           ;set up in case no carrier
  20.         test    MSR_VAL,B_CD    ;ck MSR value for CD (RLSD)
  21.         jz      carr_exit       ;ZR test result == no carrier
  22.         inc     ax              ;NZ test result == carrier present
  23. carr_exit:
  24.         pop     si
  25.         pop     bp
  26.         ret                     ;restore regs and exit
  27. _async_carrier  endp
  28.  
  29. endseg          COMM_TEXT
  30.         end
  31.